package com.liberty.dasheen.common.util;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.commons.beanutils.ConversionException;

import com.liberty.dasheen.entity.SysUser;

public class SafeUtil {

	/**
	 * @description 获取request中的属性值 
	 * @author Liberty
	 * @date 2017年8月29日 下午9:33:33
	 * @param request
	 * @param attrName
	 * @return
	 */
	public static Object getRequestAttr(HttpServletRequest request, String attrName) {
		return request.getAttribute(attrName);
	}
	/**
	 * @description 获取session中的属性值 
	 * @author Liberty
	 * @date 2017年8月29日 下午9:34:03
	 * @param session
	 * @param attrName
	 * @return
	 */
	public static Object getSessionAttr(HttpSession session, String attrName) {
		return session.getAttribute(attrName);
	}
	
	/**
	 * @description 获取当前登录的用户对象 
	 * @author Liberty
	 * @date 2017年8月29日 下午9:34:22
	 * @param session
	 * @return
	 */
	public static SysUser getUser(HttpSession session) {
		Object obj = getSessionAttr(session, "user");
		if(obj == null) {
			return null;
		}
		if(obj instanceof SysUser) {
			return (SysUser) obj;
		}
		throw new ConversionException("类型转换失败！");
	}
	
	/**
	 * @description 获取当前登录用户的ID 
	 * @author Liberty
	 * @date 2017年8月29日 下午9:34:44
	 * @param session
	 * @return
	 */
	public static Integer getUserId(HttpSession session) {
		return getUser(session).getUserId();
	}
}
